 function [dCOverdiota] = dC_diota(phi, theta, psi, iota, Det)

 d11 = Det.d(1,1); 
 d12 = Det.d(1,2);
 d13 = Det.d(1,3); 
 d21 = Det.d(2,1); 
 d22 = Det.d(2,2); 
 d23 = Det.d(2,3); 
 d31 = Det.d(3,1); 
 d32 = Det.d(3,2); 
 d33 = Det.d(3,3); 


 dCOverdiota = ...
      (-4*cos(iota)*(1 + power(cos(iota),2))*sin(iota)* ...
      power(d11*(power(cos(psi)*sin(phi) - cos(phi)*cos(theta)*sin(psi),2) -  ...
           power(cos(phi)*cos(psi)*cos(theta) + sin(phi)*sin(psi),2)) +  ...
        d12*(-(cos(2*psi)*(3 + cos(2*theta))*sin(2*phi))/4. + cos(2*phi)*cos(theta)*sin(2*psi)) +  ...
        d21*(-(cos(2*psi)*(3 + cos(2*theta))*sin(2*phi))/4. + cos(2*phi)*cos(theta)*sin(2*psi)) +  ...
        d22*(power(cos(phi),2)*cos(2*psi) + cos(theta)* ...
            (-(cos(2*psi)*cos(theta)*power(sin(phi),2)) + sin(2*phi)*sin(2*psi))) +  ...
        d23*(power(cos(psi),2)*cos(theta)*sin(phi) - 2*cos(phi)*cos(psi)*sin(psi) -  ...
           cos(theta)*sin(phi)*power(sin(psi),2))*sin(theta) +  ...
        d32*(power(cos(psi),2)*cos(theta)*sin(phi) - 2*cos(phi)*cos(psi)*sin(psi) -  ...
           cos(theta)*sin(phi)*power(sin(psi),2))*sin(theta) +  ...
        d13*(cos(phi)*cos(2*psi)*cos(theta) + sin(phi)*sin(2*psi))*sin(theta) +  ...
        d31*(cos(phi)*cos(2*psi)*cos(theta) + sin(phi)*sin(2*psi))*sin(theta) - d33*cos(2*psi)*power(sin(theta),2), ...
       2) - 8*cos(iota)*sin(iota)*power(-2*d11*(cos(psi)*sin(phi) - cos(phi)*cos(theta)*sin(psi))* ...
         (cos(phi)*cos(psi)*cos(theta) + sin(phi)*sin(psi)) +  ...
        2*d22*(cos(psi)*cos(theta)*sin(phi) - cos(phi)*sin(psi))* ...
         (cos(phi)*cos(psi) + cos(theta)*sin(phi)*sin(psi)) +  ...
        d12*(power(cos(phi),2)*cos(2*psi)*cos(theta) - cos(2*psi)*cos(theta)*power(sin(phi),2) +  ...
           ((3 + cos(2*theta))*sin(2*phi)*sin(2*psi))/4.) +  ...
        d21*(power(cos(phi),2)*cos(2*psi)*cos(theta) - cos(2*psi)*cos(theta)*power(sin(phi),2) +  ...
           ((3 + cos(2*theta))*sin(2*phi)*sin(2*psi))/4.) +  ...
        d13*(power(cos(psi),2)*sin(phi) - 2*cos(phi)*cos(psi)*cos(theta)*sin(psi) - sin(phi)*power(sin(psi),2))* ...
         sin(theta) + d31*(power(cos(psi),2)*sin(phi) - 2*cos(phi)*cos(psi)*cos(theta)*sin(psi) -  ...
           sin(phi)*power(sin(psi),2))*sin(theta) -  ...
        d23*(cos(phi)*cos(2*psi) + cos(theta)*sin(phi)*sin(2*psi))*sin(theta) -  ...
        d32*(cos(phi)*cos(2*psi) + cos(theta)*sin(phi)*sin(2*psi))*sin(theta) + d33*sin(2*psi)*power(sin(theta),2), ...
       2))/(4.*sqrt(power(1 + power(cos(iota),2),2)* ...
        power(d11*(power(cos(psi)*sin(phi) - cos(phi)*cos(theta)*sin(psi),2) -  ...
             power(cos(phi)*cos(psi)*cos(theta) + sin(phi)*sin(psi),2)) +  ...
          d12*(-(cos(2*psi)*(3 + cos(2*theta))*sin(2*phi))/4. + cos(2*phi)*cos(theta)*sin(2*psi)) +  ...
          d21*(-(cos(2*psi)*(3 + cos(2*theta))*sin(2*phi))/4. + cos(2*phi)*cos(theta)*sin(2*psi)) +  ...
          d22*(power(cos(phi),2)*cos(2*psi) + cos(theta)* ...
              (-(cos(2*psi)*cos(theta)*power(sin(phi),2)) + sin(2*phi)*sin(2*psi))) +  ...
          d23*(power(cos(psi),2)*cos(theta)*sin(phi) - 2*cos(phi)*cos(psi)*sin(psi) -  ...
             cos(theta)*sin(phi)*power(sin(psi),2))*sin(theta) +  ...
          d32*(power(cos(psi),2)*cos(theta)*sin(phi) - 2*cos(phi)*cos(psi)*sin(psi) -  ...
             cos(theta)*sin(phi)*power(sin(psi),2))*sin(theta) +  ...
          d13*(cos(phi)*cos(2*psi)*cos(theta) + sin(phi)*sin(2*psi))*sin(theta) +  ...
          d31*(cos(phi)*cos(2*psi)*cos(theta) + sin(phi)*sin(2*psi))*sin(theta) -  ...
          d33*cos(2*psi)*power(sin(theta),2),2) +  ...
       4*power(cos(iota),2)*power(-2*d11*(cos(psi)*sin(phi) - cos(phi)*cos(theta)*sin(psi))* ...
           (cos(phi)*cos(psi)*cos(theta) + sin(phi)*sin(psi)) +  ...
          2*d22*(cos(psi)*cos(theta)*sin(phi) - cos(phi)*sin(psi))* ...
           (cos(phi)*cos(psi) + cos(theta)*sin(phi)*sin(psi)) +  ...
          d12*(power(cos(phi),2)*cos(2*psi)*cos(theta) - cos(2*psi)*cos(theta)*power(sin(phi),2) +  ...
             ((3 + cos(2*theta))*sin(2*phi)*sin(2*psi))/4.) +  ...
          d21*(power(cos(phi),2)*cos(2*psi)*cos(theta) - cos(2*psi)*cos(theta)*power(sin(phi),2) +  ...
             ((3 + cos(2*theta))*sin(2*phi)*sin(2*psi))/4.) +  ...
          d13*(power(cos(psi),2)*sin(phi) - 2*cos(phi)*cos(psi)*cos(theta)*sin(psi) - sin(phi)*power(sin(psi),2))* ...
           sin(theta) + d31*(power(cos(psi),2)*sin(phi) - 2*cos(phi)*cos(psi)*cos(theta)*sin(psi) -  ...
             sin(phi)*power(sin(psi),2))*sin(theta) -  ...
          d23*(cos(phi)*cos(2*psi) + cos(theta)*sin(phi)*sin(2*psi))*sin(theta) -  ...
          d32*(cos(phi)*cos(2*psi) + cos(theta)*sin(phi)*sin(2*psi))*sin(theta) +  ...
          d33*sin(2*psi)*power(sin(theta),2),2)));
